#include <iostream>
#include "1.h"
using std::cout;
using std::cin;
using std::endl;
// void Add(int a , int b)
// {
//     cout<< a + b <<endl;

// }
namespace obj
{
    void Sum(int a, int b)
    {
        cout << a - b << endl; 
    }
}
// int main(int argc, char const *argv[])
// {
//     // int a = 0;
//     // int& b = a;
//     // cout << &a <<endl;
//     // cout << &b <<endl;
//     // b = 20;
//     // cin >> b;
//     // cout << a <<endl;
//     //权限不能放大
//     // const int c = 0;
//     // int& d = c;  
//     //权限平移
//     // const int a = 0;
//     // const int& c = a;
//     //权限缩小
//     int e  = 0;
//     const int& f = e;
//     int h = f;
//     //临时变量
//     int a1 = 20;
//     //非常量引用的初始值必须为左值
//     //int&a = a1 * 2;
//     //const int& a = a1 * 2;
//     //cout << a << endl;
//     //无法用 "double" 类型的值初始化 "int &" 类型的引用(非常量限定)
//     //double p = 3.14;
//     //int& l = p;
//     //const int& l = p;
//     //cout<< l << endl;
//     Add(0);
//     return 0;
// }
// void opq(int a = 10,int b = 20, int c = 30)
// {
//     cout << a << b << c << endl;
// }
// int main()
// {
//     Add();
//     Add(30);
//     Add(30,50);
//     obj::Sum();
//     obj::Sum(50);
//     obj::Sum(90,160);
//     opq(10);
//     opq(10,12);
//     opq(10,12,13);
//     //这种行为是不允许的
//     //opq(10,,13);

//     return 0;

//}
#include <stdio.h>
#include <string.h>
void Add(int a, int b)
{
	cout<<a + b<<endl;

}
void Add(double a, int b)
{
	cout<< a + b<<endl;

}
void f()
{
cout << "f()" << endl;
}
void f(int a)
{
cout << "f(int a)" << endl;
}
void fxx()
{}

int fxx()
{
return 0;
}
int main()
{
	int i = 5;
	//Add(10.0,5);
    f(10);
    
    f();
}